package com.sgl.gk.mapper;


import com.sgl.gk.controller.vo.GkStationVo;
import com.sgl.gk.domain.GkStation;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface GkStationMapper {
    List<GkStationVo> list(GkStation gkStation);

    int add(GkStation gkStation);

    int edit(GkStation gkStation);

    int removeByIds(Long[] ids);

    Long selectId();

    /**
     * 根据产线查询工位信息
     * @param productionIds
     * @return
     */
    List<GkStation> selectByProductionIds(List<Long> productionIds);

    /**
     * 根据id查询产品id
     * @param stationId
     * @return
     */
    List<Long> selectProductIdById(@Param("stationId") Long stationId);

    /**
     * 根据产品id查询工位信息
     * @param productIds
     * @return
     */
    List<GkStation> selectInfosByProductIds(List<Long> productIds);

    /**
     * 根据产品id查询工位id
     * @param productIds
     * @return
     */
    List<Long> selectIdByProductIds(List<Long> productIds);

    List<GkStation> selectNoConfiguration();

    int countAll();

    int editTypeByStationIds(@Param("stationIds") List<Long> stationIds, @Param("configureType") Integer configureType);

    List<GkStation> selectInfosByIds(List<Long> stationIds);

    Long MaxId();

    List<GkStation> selectNoConfigurationByIds(Long[] ids);

    GkStation selectInfoById(@Param("stationId") Long stationId);

    List<GkStation> allInfo();
}
